/**
  ************************************* 版权***********************************
  *
  *                 (C) 版权所有 2024,柴志强 所有权利             
  *                     
  *    
  * 文件名     :   rs485.h   
  * 版  本     :    v1.0		
  * 作  者     :   柴志强			
  * 日  期     :   2024-02-26         
  * 功  能     :    	
  *
  ******************************************************************************
 */

#ifndef __RS485_H__
#define __RS485_H__

#define Rs485Uart             			UART5                 //RS485使用的UART号
#define Rs485PowerGPIO        			GPIOD									//RS485电源控制GPIO
#define Rs485PowerPIN       			FL_GPIO_PIN_2					//RS485电源控制GPIO PIN
#define Rs485ControlGPIO            	GPIOD									//RS485控制GPIO
#define Rs485ControlPIN            		FL_GPIO_PIN_11 				//RS485控制GPIO
#define Rs485OpenUartIT 	        	openUart5IT
#define Rs485CloseUartIT      	    	closeUart5IT

//RS485 电源
#define Rs485PowerON 					FL_GPIO_SetOutputPin(Rs485PowerGPIO, Rs485PowerPIN)
#define Rs485PowerOFF 					FL_GPIO_ResetOutputPin(Rs485PowerGPIO, Rs485PowerPIN)
//RS485 方向
#define Rs485ControlSend 				FL_GPIO_SetOutputPin(GPIOD, Rs485ControlPIN)
#define Rs485ControlRead 				FL_GPIO_ResetOutputPin(GPIOD, Rs485ControlPIN)

#define Rs485UartBuff 					uart5Buff
#define Rs485UartBuffLenght 			uart5BuffLenght

#define Rs485ReadSuccess 				1
#define Rs485ReadFail 					0

#define Rs485UartSendString(...) 		uartPrint(Rs485Uart,__VA_ARGS__); //重定义RS485输出端口 里面运用了不定量参数... 和取值参数__VA_AGRS__ C99的标准
#define Rs485UartSendHex(a,b) 			uartSendHexData(Rs485Uart,a,b); //重定义RS485输出端口
#define RS485DataToDebugUart(...)       uartPrint(UART0,__VA_ARGS__); //将收到数据发送到Uart0调试端口

extern unsigned char RS485ReadData(unsigned char* data, unsigned int dataLeng);

#endif

